package com.yerbamateprimer.client;

import com.yerbamateprimer.action.user.UserAction;
import com.yerbamateprimer.advice.Advice;

/**
 * This interface define 
 * a client to communicate
 * physically with the yerba 
 * mate primer users.
 * 
 * @author Matias Liwski
 * @version 1.0
 */
public interface Client {
	/**
	 * Send a physical advice to the user.
	 * 
	 * @param advice The advice to send.
	 */
	void send(Advice advice);

	/**
	 * Receive an action to execute at the yerba mate primer engine.
	 * 
	 * @param action The action to execute.
	 */
	void receive(UserAction action);
}